package Pojo;

import java.util.List;
/**Classe Professor 
 * Classe professor herda de Pessoa e faz relacionamentos com turma
 * 
 * @author Thiago de Sousa Silveira 
 *
 */
public class Professor extends Pessoa{
	/** Código do Professor */
	private int idProfessor;
	
	/** Departamento do Professor*/
	private String departamento;
	
	/** lista de Turmas*/
	private List<Turma> turmas;
	
	/**
	 * Construtor do Professor sem relacionamentos
	 * @param id
	 * @param nome
	 * @param cpf
	 * @param departamento
	 */
	public Professor(int id, String nome, String cpf, String departamento){
		this.setIdProfessor(id);
		this.setNome(nome);
		this.setCpf(cpf);
		this.setDepartamento(departamento);
	}
	
	/**
	 * Construtor do professor com relacionamentos
	 * @param id
	 * @param nome
	 * @param cpf
	 * @param departamento
	 * @param listaTurmas
	 */
	public Professor(int id, String nome, String cpf,String departamento,List<Turma> listaTurmas){
		this.setIdProfessor(id);
		this.setNome(nome);
		this.setCpf(cpf);
		this.setDepartamento(departamento);
		this.turmas = listaTurmas;
	}
	
	/**
	 * Sobrescrita do método toString
	 * @return String
	 */
	@Override
	public String toString(){
		return(this.getIdProfessor()+"\t"+this.getNome()+"\t"+this.getCpf()+"\t"+this.getDepartamento()+"\n");
	}
	
	/**
	 * Getter do idProfessor
	 * @return int
	 */
	public int getIdProfessor(){
		return(this.idProfessor);
	}
	
	/**
	 * Setter do idProfessor
	 * @param id
	 */
	private void setIdProfessor(int id){
		this.idProfessor = id;
	}
	
	/**
	 * Getter do Departamento
	 * @return String
	 */
	public String getDepartamento(){
		return(this.departamento);
	}
	
	/**
	 * Setter do Departamento
	 * @param departamento
	 */
	private void setDepartamento(String departamento){
		this.departamento = departamento;
	}
	
	/**
	 * Getter de Turmas
	 * @return List<Turma>
	 */
	public List<Turma> getTurmas(){
		return(this.turmas);
	}
}
